Design Patterns: A Resource for Reverse Engineering

نویسندگان

  • Niranjan Reddy
  • Jayadev Gyani
  • P. Niranjan Reddy
چکیده

Design patterns are gaining popularity because they support modifiability and flexibility of designs. Design patterns are solutions to frequently recurring problems in design. Reverse engineering of source code primarily focuses on the software architecture. Understanding software architecture in terms of design patterns simplifies the process of identifying some key properties such as coupling, flexibility and maintainability. This paper presents a novel approach to extract design patterns using structural metrics of object-oriented programs. It involves two steps. In the first step, structural metrics are extracted from the source code. In the second step, these metrics are matched with the properties of structural design patterns of Gang-of-Four to identify a design pattern. Our approach is demonstrated by extracting design patterns from a Java program using our pattern extraction tool.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Pattern-Driven Reverse Engineering

A fundamental weakness of conventional reverse engineering approaches is the lack of support in identifying program structures and recurring patterns. The integration of human domain knowledge represented via patterns can significantly improve design recovery results. The recognition of a program’s design leads to recurring patterns that, at present, have to be identified in demanding tasks by ...

متن کامل

Reverse-Engineering the Literature on Design Patterns and Reverse-Engineering

Since their inception in 1994, design patterns have been the subject of many papers. In the reverse-engineering community, several authors have proposed approaches to consider design patterns during reverseand re-engineering. However, it has been recently put forward in the community that it is difficult to compare previous approaches due to the diversity of vocabulary and the lack of a general...

متن کامل

The Role of Design Pattern Decomposition in Reverse Engineering Tools

The decomposition of design patterns into simpler elements may reduce significantly the creation of variants in forward engineering, while it increases the possibility of identifying applied patterns in reverse engineering. Key questions raise here: what should be design patterns decomposed in? How to recognize the application of design patterns by identifying their components? Currently, there...

متن کامل

A Design Pattern Detection Technique that Aids Reverse Engineering

If software design-patterns could be captured and reused then this would be very helpful to reverse-engineering often practiced by those who develop and who maintain software. The ad-hoc nature and informality of this reverse-engineering process however, makes the discovery of these patterns not straightforward. Moreover, a high false positive rate results from trying to detect these design-pat...

متن کامل

Reverse Engineering State and Strategy Design Patterns using Static Code Analysis

This paper presents an approach to detect behavioral design patterns from source code using static analysis techniques. It depends on the concept of Code Property Graph and enriching graph with relationships and properties specific to Design Patterns, to simplify the process of Design Pattern detection. This approach used NoSQL graph database (Neo4j) and uses graph traversal language (Gremlin) ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010